10.3.2 データアクセス保護
著者の主張:属性がプライベートである旨を示す
アクセス制御
パブリック
名前の先頭にアンダースコアを1つ付ける:プロテクト
アンダースコアを2つ付ける:プライベート
Pythonには、アクセス制御のルールが破られていることを検知する機能はない。
アクセス制御の強制は組織的な課題になる。これは動的型付け言語の宿命だ。
リンター、コードスタイル、コードレビュー
属性をプロテクトやプライベートにすると、クラスのhelp()に表示されなくなる。
利用する開発者が誤って使わなくなる、という主張
プライベート属性は 名前マングリングにより簡単にはアクセスできない
マングリングされた名前の属性アクセスはリンターで簡単に検知できるとのこと(TODO 検証)